
import os

################################ train ################################
BATCH_SIZE = 32
BETAS = (0.9,0.999)
# WEIGHT_CLIP = 0.01
LAMBDA_GP = 10
EPOCHS = 50_000
SAVE_ON_STEP = 64
SAMPLE_ON_STEP = 32
CRITIC_ITERATIONS = 5
GENERATOR_ITERATIONS = 1
LEARNING_RATE = 1e-3 
################################ model ################################
STAGES = 4
FILTERS_BASELINE = 32
IMAGE_CROP_SIZE = 16*(2**STAGES)
IMAGE_SHAPE = [BATCH_SIZE,3,IMAGE_CROP_SIZE,IMAGE_CROP_SIZE]
LATENT_SHAPE = [BATCH_SIZE,1,16,16]
LATENT_SINGLE_SHAPE = [100,1,1]
# LATENT_SINGLE_SHAPE = [1,16,16]
################################ pathes ################################
# DATASET_PATH = "X:\\Machine_Learning\\dataset\\ACG Characters\\generation"
_ROOT_PATH = os.path.split(os.path.realpath(__file__))[0]
_SAVE_PATH = _ROOT_PATH + "\\checkpoint\\"
_LOG_PATH = _ROOT_PATH + '\\logs\\'
# MODEL_CHECKPOINT_PATH = _SAVE_PATH + f'model_{STAGES}_{FILTERS_BASELINE}.pt' # _STAGES_FILTERBASELINE_
# OPTIMIZER_CHECKPOINT_PATH = _SAVE_PATH + f'optimizer_{STAGES}_{FILTERS_BASELINE}.pt'
MODEL_CHECKPOINT_PATH = _SAVE_PATH + f'model_Csal.pt' # _STAGES_FILTERBASELINE_
OPTIMIZER_CHECKPOINT_PATH = _SAVE_PATH + f'optimizer_Csal.pt'
DATASET_PATH = 'X:\Machine_Learning\dataset\AnimeFaces\\fullset'